Store hardening, session restore and placement fixes#369
Merged
Conversation
- quarantine corrupt JSON (userData stores, granted paths, workspace files) via shared quarantineCorruptFile instead of silently overwriting - validate workspace.json container shapes and fall through to .bak when the primary is parseable but structurally broken - reject terminal ids with path separators before joining log paths - recover dock window snapshots whose zones reference no panels by laying the orphaned panels into a fresh tab stack instead of dropping them - land keyboard-created panels on the active canvas, not the primary one - capture live terminal cwds for every activated workspace on session save - remount dock tab content when switching between same-type tabs so a reused instance never drives the previous tab's store - agent panel: drop stale model picks from disconnected providers once auth status arrives, unify composer disabled/placeholder states - add regression suites: dock/window flush races, placement, canvas and panel lifecycle, terminal lifecycle and logger, session serialize round-trip, panel transfer, plus a multi-canvas e2e spec
stream.end() releases the fd asynchronously; on Windows the open handle made the afterEach rmSync fail with ENOTEMPTY. Retry the removal until the close lands.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hardening and bugfix batch plus a large set of regression tests.
New test suites cover dock/window flush races, placement, canvas/panel/terminal lifecycle, session serialize round-trip, panel transfer, and a multi-canvas e2e spec.
Typecheck and full vitest suite (1541 tests) pass.